其他
造就 | 虞晶怡:我要制造像人眼一样的VR技术
https://v.qq.com/txp/iframe/player.html?vid=y0311jg7iq7&width=500&height=375&auto=0
上海科技大学信息科技与技术学院教授
我是上海科技大学虞晶怡,今天给大家带来的演讲主题是《什么是“扭曲现实”的光场技术》。 首先,来看看什么是光场。这个被大家刷爆朋友圈的视频,应用的就是所谓的光场虚拟现实技术,来自于全美国最大的初创公司Magic Leap,这个公司市值现在是45亿美元。上一轮融资14亿美元,投资他们的是阿里巴巴和谷歌。
看完之后,大家的第一个感觉应该是问我:这是真的还是假的?很抱歉,这是假的。为什么是假的?你需要戴着AR眼镜,才能够看到这样的效果。 抛开眼镜不谈。很多人惊叹:“哇,好酷!”为什么会觉得如此酷炫?这跟我们平时在电影院看到的,有什么不一样?。我希望大家能够带着这些问题接收后面的演讲内容。
先简单介绍一下我自己,在过去15年,我一直在从事虚拟现实相关的研究,特别是光场虚拟现实技术。1998年,我在美国加州理工大学读本科,主要学习的是计算机视觉和图形学。
我对虚拟现实非常感兴趣,所以读完本科意犹未尽,于2000年进入了麻省理工,读完博士之后的整整十年里,我一直是在美国任教。
2015年的时候,我非常困惑,每个人到了我这个年纪大概都会想,我今后的人生何去何从。在全世界最好的两个理工大学读毕以后,我想找一个更好的理工大学。
正好上海新建了一个全新的大学——上海科技大学,所以我就加入了其中,并负责虚拟现实中心。今后我会不会变成一个虚拟的我?那是后话。
一谈到虚拟现实,我们就会想到360度的环视。可是大家不知道,这其实已是20年前的旧科技,几乎一点新科技的成分都没有。
这是1995年的技术,主导的科技大神叫Eric Chen,这位老兄在苹果公司工作。
当然,每个人都想创业,当大家看到这个进行的时候,特别兴奋。所以在1998年,我和我的4个小伙伴就在想这是怎么做的。其实这个系统做法非常简单,拿一个相机拍多张照片,然后用一个拼接的算法,把它拼成一张环视的照片。这个技术呈现,在你的手机里就有。 我是一个工程师,不得不讲一点核心的东西。这个技术里有两个核心的问题:
第一,要有图像映射,英文叫Image Warping。它要能够找到这个图像里的这个人,对应到另一个图像里的同一个人。有了这样一个映射关系,才有把握将这两个图像拼合在一起。
但你会发现,它们并不能完美拼接。所以你还要利用计算机算法,找到一条边缝。这条缝保证从左到右,切的刚刚好,那你最后完成的这个图象就是完美的了。 我实在没能经受住诱惑,在1999年,和我加州理工的小伙伴一起,建立了我人生的第一个公司。这个公司干什么呢?说来比较惭愧,它是为拉斯维加斯赌场拍一个环视效果。至于作用是什么,留给你们自己去想。
很抱歉,这个公司并没能成功,最后我们只卖了4000美元。然后用这4000美元,我们四个人去夏威夷玩了一趟。
痛定思痛,要回过头来想,为什么这样一个传统360度的、所谓的虚拟现实没有成功?如果20年前都不能成功,凭什么说它在现在就可以成功?必须要知道什么地方搞错了。
根本的原因在于,现在的虚拟现实过多注重虚拟的部分。所谓虚拟现实,就是让你的眼睛看到的,像真实的场景一样。你是否满足于将一张环视360度的图片当作真实?我想大家是不会满意的。
所以,我们必须要从虚拟现实,慢慢过渡到虚拟真实。有了虚拟真实,我们才能做到眼见为实。
有了这三样东西,我们就可以看一下人眼的构造。
人眼可能是全世界最精密的相机。这样一个相机由多个部分组成,最重要的两个部分:首先是人的角膜,它起了2/3聚焦的作用。
后一部分是晶状体,近视眼就是由于晶状体长期变形造成的。有了晶状体和角膜以后,我们就能把光线从三维空间映射到视网膜上,再通过电信号传输到大脑,产生图像。 我为什么要讲解人眼这一段呢?如果我要做真正的虚拟现实,那我必须要知道眼睛是怎么看世界的,知道了眼睛怎么看,我才知道怎么样产生正确的内容。
现在,绝大部分虚拟现实就是一个360度的环视图片。我们还需了解,虚拟现实当前存在着三大局限性。
一、 缺乏立体视差
人的两只眼睛长在正前方。受限于这样的布局,它也会有很大的重叠,同一个物体在左眼和右眼里都会出现。但它可以根据物体的偏移状况,决定距离这个物体远或是近。而传统的360度,是没有双目视觉的,所以你根本连深度都看不到。 当然你可以说,我用一只眼睛也能“抓取”物体,因为人眼具备动态对焦的功能。你用一只眼睛看舞台上的我,再看我身后的屏幕,焦距不停在变化。大脑处理了这个信息,并告诉你,你的眼睛往我看的时候,我离你近,屏幕离你远。 二、缺乏动态对焦
虽然一只眼睛也能判断大约的深度,但它并不知道精确的深度,需要依靠两只眼睛协同判别深度到底在哪里。 三、缺乏运动视差
有些动物,如鸽子,它的两只眼睛长在两侧,中间没有交汇的地方,所以两只眼睛分别看到不同的东西,而且它不具备较强的动态对焦的功能。
可是,你很少看到鸽子撞墙,这是为什么?因为鸽子是依靠它所见物体移动的速度,来判别这个物体离它远还是近。如果它看到一个物体移动得非常快,它会认为物体离它非常近,并据此判断什么时候可着陆。 所以,为了产生真正的下一代的虚拟现实,你要做到三件事情——双目视觉,动态对焦和移动视角,这才是当今的核心问题所在。 怎么来做立体视差?
20年前,有一位以色列的技术大牛叫Shmuel Peleg,他发明了一种怎么产生这样一种立体对焦的设备和算法。这个设备和算法其实也很简单,拿一个相机,围着三维世界旋转一圈,拍出很多很多张照片。
然后,每张照片我只取两个数值的列。比如从中间的位置开始,往左取第五列或者往右取第五列,各拼出一张照片。这样两张照片,你能保证你看的时候,你的双目视觉是正确的,这是一个非常有意思,且非常简单的做法。
再介绍一个百万美元的设备,谷歌Jump相机。谷歌一直在研发360度3D全景系统。方法也是将相机排成一大圈,只是拼接的时候,它把每一张图象一拆为二,左半边的图像拼在一起形成整张图片,右半边的图像拼在一起形成另一张图片,由此产生了360度3D全景播放系统。 其中的难度还是有两个:第一,怎样实时将这些图像拼接起来;第二,图像拼接后,如何保证我左眼看到的和右眼看到的一致。
上海科技大学也在过去一年里,研发了一套非常有意思的360度3D环视系统。基于核心算法完成实时拼接,然后在云端进行压缩和传输,最后在手机端实现360度3D直播,从而解决双目视觉的问题。
利用这套系统,我们在去年年底的时候,协助SMG东方文广全景拍摄舞台剧《战马》。 怎么解决动态对焦?
你看什么地方,它能对焦到什么地方。为了解决这样一个问题,我曾经MIT的教授Ted Adelson,提出了一个非常了不起的概念,叫做“光场”。
什么是光场?在Ted Adelson的眼里,这个世界其实是没有三维的,没有光照,没有颜色。这个世界对你我来说,只有光线。只要能够采样到这个世界里所有的光线,就能够进行渲染、建模,因为光线描述了空间里所有的几何、信息、光照等等信息。
怎么表征这样一个光线呢? 为了表示一根直线,可以用所谓的“两点式”,即两个点决定一根光线。
所以这两个点你可以分别认为,它固定在两个平面上,这两个平面分别叫SD Plane和UV Plane。四个点,STUV四维就能表示所有的光线。 采样了那么多光线以后,你就能够重对焦。如果我要对焦到后面的话,我可以采样从后面射出来的光线,如果我要对焦到前面,我可以采样前面射出来的光线。Magic Leap其中一个原理就在这里面,怎么样让你的眼睛看到虚拟现实的光场信息。
我现在给你们看一个视频,你可以点任何位置,它就会对焦到任何位置。它可以对焦到后面的人,也可以对焦到前面的人。点在哪里,它就会对焦到哪里。这都是后拍摄的,捕捉完,重对焦,非常有意思。 下一个问题是,我们怎么得到这些光场?
这是我在2000年加入MIT以后,协助搭建的第一个相机阵列。它用了64个USB的相机,能够采样各个方向和各个角度的光线,采样完以后就可以采用重对焦的方法。
三四年以后,比麻省理工更有钱的斯坦福大学,花100万美元搭建了一个更好的相机阵列,这个相机阵列在当时来说可是超豪华的阵容。
有了这样一个相机阵列,我们就可以做动态对焦的视频。
用100万美元做这样一个相机阵列还是太昂贵了,没有多少人能够付得起。那怎么办?现在的相机分辨率越来越高,很快就要超过亿万级像素。可我真的需要亿万级像素吗?用不着,那就干脆改变它。
我在这亿万级像素的相机前面,放一个微小的棱镜阵列,每一个小棱镜就好像是一个小的相机,等价于一个相机阵列,这就是所谓的光场相机。有了这个光场相机,拍一张照片就可以拍动态对焦这样的效果。
耳听为虚,眼见为实。这是我们拍的一个能够做到实时重对焦的360度环视。用这样一个系统捕捉光场的话,它就可以很有效地模拟我们眼睛看三维世界。
如何产生运动视差?
一种是拍电影似的做法,我用计算机图形学方法来渲染一张又一张非常漂亮的图片。这个方法非常好,可惜效率很低,渲染一张图片通常需要一天的时间,而且你不可能戴在头盔上,走到哪里渲染到哪里。 另一种,是计算机视觉的做法。拍很多图片,然后对三维空间进行一个重建,把三维空间模型重建出来。很可惜,重建的效果并不理想。如果你戴着头盔看,体验非常差。
所以我们只能在中间找一个平衡点。这个平衡点就叫Lumigraph,Lumi就是光的意思,Graph就是图的意思。
把这两样一结合,我就能够产生一个动态的在三维世界里走动的效果。
今后的娱乐体验也将完全不一样。你可以围着鹿晗看。
看《星球大战》的时候,你们有没有想到一个很有意思问题,这里面的技术非常发达,我有一个死星,能够打一束光,一个地球就没了;我有一把激光剑,可以削铁如泥;R2D2机器人能跟你对话。但是当你想看3D的时候,却只有64个像素。
可见,如果要见到真正的虚拟现实,或者增强现实的这样一个3D全景,他们的技术还不够。什么技术够?就是把我刚刚讲的用光场采集、阵列等技术逆向来用。 我要把这个相机反向运用,制造下一代像人眼一样的VR技术。
怎么做这样一件事情呢?在相机的事例里,我把一个小的棱镜阵列放在我的传感器上,现在我把它反过来,把相机这样一个棱镜阵列,贴到我的显示器上,这样我每一束光打出来,不但能够控制它每一个位置,而且能控制它每一个方向的颜色。
等价于在这个世界里,我能够控制任何一个方向,任何一个位置的光线的颜色,这样我就解决了光场生成的问题。
现在绝大部分的VR公司都在强调做显示端,头盔。但是,大家忽略了很重要的问题,就是头盔上我播什么片子呢?最关键点并不在于头盔,而在于怎么样生成内容。
由于人们的要求越来越高,已经不满足这种传统的,只是拍一下360度环视的效果,因为它跟我的眼睛看出来一点都不一样。慢慢它会过渡到360度3D这样的环拍技术,至少可以解决双目视觉的方案。
在不久的未来,大家就会聚焦光场技术,因为有这样的技术,才能进阶到解决动态对焦,做到运动视差产生的这样一个过程。 Lytro公司,是全球最厉害的光场相机的公司,推出的最新版的光场相机,同时能在多个高度,拍摄高帧率高画质的图象,然后实现重对焦。很可惜这个相机价值80万美元,所以你要卖掉半套房子才能够买这样一个相机。 我们正在研发自己的光场相机系统,成本控制会远远低于这样一个系统。我的想法是,希望我们中国的用户能够成为全世界第一批看到光场VR效果的用户。
随着光场科学技术的发展和成熟,在不久的将来,我们就能产生VR和AR的内容,使你的眼睛无法分辨真的与假的。
所以,不要相信你所看到的,那要相信什么呢?Follow your eyes,but see with your heart。
谢谢大家。
点击标题 查看往期回顾